<?php 
	//网络配置
	
	/etc/sysconfig/network-scripts/ifcfg-eth0 //修改配置文件
	service network restart   //重启网络
	iptables -F  //清空防火墙规则
	service iptables save//保存防火墙设置
	/etc/selinux/config ///将selinux设置为disabled

	pwd //显示当前目录
	ls  //显示目录内容
	ls -a //包含隐藏文件
	ls -l  //列出文件详细信息
	ls -lh   //大小具体化,kb,mb,gb

	cd ~break //进入break用户宿主目录
	cd /tmp  //进入根下tmp目录
	cd  //返回上一级

	mkdir -p a/b/c //递归创建目录
	rm breakdinner.php
	rm -r breakdinner/a/b //递归删除目录,删除过程中没经过一个目录就会提示一次是否删除,末尾的空目录不提示
	rm -rf breakdinner/a/b //强制递归删除目录,无提示
	cp a.php /tmp/a   //复制a.php到/tmp/a目录下
	cp a*.php /tmp/a  //复制以a开头的.php文件到/tmp/a
	mv index.html index2.html  //更名
	mv index.html a   //移动文件到a
	
	head -n 2 /etc/passwd  //显示前两行
	tail -n 2 /etc/passwd   //显示后两行
	cat -n  index.php     //一次显示全部内容

	whereis passwd //查找命令为passwd的文件
	find / -name index.php  //查找文件index.php
	find / -size +1000k  //查找大于1m的文件
	find /www -type d -exec chmod 750 {} \;//设置目录为750
	find /www ! -type d -exec chmod 640 {} \;//设置文件为640
	find / -name \*.php -exec rm -i {} \;//将找到的文件删除

	// 压缩
	gzip/bzip2 passwd  //压缩
	gzip/bzip2 -d passwd.gz  //解压
	tar -z(j)cvf /tmp/a.php /tmp   //gzip/bzip2打包压缩
	tar -z(j)xvf breakdinner.tar.gz     //解压

	ssh root@192.168.1.153   //xshell连接虚拟机的方式,root为管理员名


	// VI操作技巧
####	#标准模式
	:1,10s/a/b/g  //在1到10行替换所有的a为b.如果不加g,则只替换第一个
	yy //复制当前行
	5yy //复制当前开始5行,底部会有提示
	dd //剪切当前行
	5dd //剪切当前开始5行,底部会有提示
	p  //粘贴到下一行
	P  //粘贴到上一行
	G  //移动到文末
	5G  //移动到第5行
	:/apple  //向上搜索apple
	:?apple  //向下搜索apple
	:w //保存
	:w! //强制保存
	:q  //退出
	:q! //强退
	:wq! //强存退
	:w passwd2  //另存为passwd2文件
	:! 命令  //暂时将vi后台处理,执行命令
	:set nu //显示行号
	ctrl+f //上翻一屏
	ctrl+b //下翻一屏
	j/k/h/l  //分别对应上下左右一行,前缀可带数字
####	#编辑模式
	i //当前光标初插入
	I //行首插入
	a //当前光标下一个字符插入
	A  //行末插入
	o  //下一行插入
	O  //上一行插入
	esc  //标准模式

	// 账号管理
	useradd break //创建用户
	useradd -G breakdinner break //创建用户break的同时声明组名breakdinner
	passwd break //修改break的密码
	passwd -S break //查看break的密码状态
	userdel break  //删除用户
	userdel -r break //连同组一起删除
	groupadd breakdinner//添加组
	groupdel breakdinner//删除组
	若出现"cannot remove the primary group of user 'break'"//表示当前组为某个用户的初始组
	usermod -G houdun break //给break用户设置附加组houdun,-G后可用逗号隔开写多个组
	id break //查看break的账号信息

	//权限管理
	chown break a.php //改变a.php的所有者为break
	chown break:root a.php//改变a.php的所有者为break,所属组为root
	chown -R break:root newdir//改变newdir目录及旗下所有文件/目录的所有者为break,所属组root
	// chmod 777 a.php//改变文件权限为所有者,所属组,外来者,全部可读可写可执行.(待考究)
	chmod 777 break //改变用户权限

	// 磁盘操作
	// 列出目录大小
	du -ah //以易识别单位显示大小
	du -sh /etc  //列出总大小
	df -h  //以易识别的单位查看分区情况

	fdisk -l  //查看计算机中硬盘与分区信息
	fdisk /dev/sdb2  //对sdb2分区
		n  //新建分区
			e  //扩展分区
			p  //主分区(1-4)
				Partition number(1-4):1   //先建立主分区.这是选择分区号
				First cylinder(1-1044,default 1):1 //起始柱面,默认1
				Using default value 1
				Last cylinder,+cylinders or +size{K,M,G}(1-1044,default 1044): +2G   //结束柱面,给分2G
			//按照以上相同的步骤分扩展分区,由于扩展分区下要分逻辑分区,所以直接把主分区外的空间全部分给扩展分区即可
			l   //逻辑分区
			w  //提交执行
			d  //删除分区
	(分区fdisk命令只有超级用户root 可用;分区时添加硬盘名如fdisk /dev/sdb,不要添加分区号)
	mkfs -t ext4 /dev/sdb2  //格式化..分区必须格式化之后才能使用

	mount //查看挂载点
	mount /dev/sdb2 /tmp   //把sdb2挂在到tmp目录下
	umount /dev/sdb2    //卸载分区
	可以通过修改/etc/fstab来开机自动挂在
	/dev/sdb2		/www 	ext4 		defaults 		0  0
	mount -a //根据/etc/fatab设置挂载分区

	//软件安装
	yum -y install wget //yum安装wget,y表示同意所有请求 
	wget url     //使用wget下载指定url的软件
	/*以下代码很常用,是各种依赖包,通常在配置好网络后就执行该语句*/
	yum -y install gcc make flex byacc libpcap ncurses perl ncurses-devel libpcap-devel //安装环境
	./configure --prefix=/usr/local/iftop //环境检测
	make  //编译
	make install //编译安装
	以上两条可以缩写为 make & make install
	/*以上*/
	//RPM安装包
	rpm -qa | egrep -i vi //查看所有安装的vim软件
	rpm -e mysql //删除mysql
        rpm -e --nodeps mysql //强制删除(用于当前应用被占用的时候)
 	rpm -ivh MySQL-server.rpm   //安装软件
 	// mysql5.5
 	// centos默认带了mysql5.5,如果要装其他版本必须要强制删除原来的版本
 	http://mirrors.sohu.com/mysql/MySQL-5.5/MySQL-client-5.5.46-1.rhel5.i386.rpm
 	http://mirrors.sohu.com/mysql/MySQL-5.5/MySQL-server-5.5.46-1.rhel5.i386.rpm
 	/*错误处理*/
 	// 缺少perl包
 	error: Failed dependencies:/usr/bin/perl is needed by MySQL-server-5.5.36-1.rhel5.i386
 	执行:yum install -y perl
 	// 与原先版本冲突
 	查看系统:mysql rpm -qa | grep mysql(无任何效果,待定)
 	强制删除原版本mysql:rpm -e --nodeps mysql-libs-5.1.71.........i686(这个名字从报错信息中可以获取)
 	// 复制配置文件
 	cp /usr/share/mysql/my-large.cnf  /etc/my.cnf
 	启动mysql:service mysql start
 	连接mysql:  mysql -uroot -p
 	/*yum安装*/
 	yum info mysql 		//查看软件mysql信息
 	yum search tree 		//搜索包含tree 的软件
 	yum install tree 		//安装tree软件
 	yum update 		//更新系统中的软件
 	yum erase tree 		//删除软件tree
 	/*LAMP搭建*/
 	yum install httpd //安装apache
 	yum install mysql mysql-server  //安装mysql,记得后面的服务端
 	yum install php php-mysql php-gd php-mbstring //安装php,可以跟上各种扩展
 	// 启动apache
 	service httpd start 
 	#如果报错:Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName
 	打开 httpd.conf,把ServerName localhost:80前面的80去掉,如果没有这句就添加
 	//重启apache
 	apachectl restart
 	//启动mysql 
 	service mysqld start
 	/*注意*/
 	web的根目录默认在/var/www/html中
 	service iptables stop //关闭防火墙
 	/etc/selinux/config //关闭selinux

	打开/var/www/html目录,建立index.php文件，写入代码测试
	//打开php错误
	vi /etc/php.ini
	//在530行把off改成on
	// 把html目录的所有者和所属组变成apache
	// 这样将来apache操作的时候就会有权限
	chown apache:apache html

	//更改apache的配置项 vi /etc/httpd/conf/httpd.conf
	DocumentRoot "/var/www/html”
	Directory '/var/www/html'
	//把上面两个都改成/www,重启apache	

	//创建虚拟主机

	1.更改本机hosts文件
	192.168.1.111    www.breakdinner.com
	192.168.1.111    www.qq.com

	2.打开/etc/httpd/conf/httpd.conf
	把NameVirtualHost *:80 #号去掉
	/etc/httpd/conf.d/建立一个virtual.conf,键入以下内容
	<VirtualHost *:80>
	    ServerAdmin breakdinner@163.com
	    DocumentRoot /www/breakdinner
	    ServerName www.breakdinner.com
	</VirtualHost>

	<VirtualHost *:80>
	    ServerAdmin breakdinner@163.com
	    DocumentRoot /www/qq
	    ServerName www.qq.com
	</VirtualHost>
	3.在/www目录创建breakdinner和qq目录，里面放入不同内容的html,做测试

	4.重启apache 当访问www.breakdinner.com是一个页面，访问www.qq.com是另外一个页面

	//在服务器导入sql文件
	mysql> create database blog charset utf8;
	Query OK, 1 row affected (0.00 sec)

	mysql> use blog;
	Database changed

	/*注意注意*/
	linux下所有功能使用一切外部网络访问时,如果出现不被允许访问或者类似的问题,先考虑防火墙关闭否"


        CentOS 使用yum命令安装出现错误提示【could not retrieve mirrorlist http:/ /mirrorlist.centos.org ***】
            1)etc/sysconfig/network-scripts/ifcfg-eth0
           用vi 打开这个文件后，接下来会出现截图的内容, 其中要注意两个配置(按下面的值去设置)，如果不会使用vi的同学，请自行google或者百度用法。
            ONBOOT=yes
            MM_CONTROLLED=no 
            保存
            2)/etc/resolv.conf
            nameserver 8.8.8.8 #google域名服务器
            nameserver 8.8.4.4 #google域名服务器
            保存
            3)重启网卡

?>
